home *** CD-ROM | disk | FTP | other *** search
/ C++ für Kids / C++ for kids.iso / Buch / Monster3.cpp < prev    next >
C/C++ Source or Header  |  1999-01-19  |  3KB  |  94 lines

  1. //---------------------------------------------------------------------------
  2. #include <vcl\vcl.h>
  3. #pragma hdrstop
  4.  
  5. #include "Monster3.h"
  6. //---------------------------------------------------------------------------
  7. #pragma resource "*.dfm"
  8.  
  9. const String Pfad = "c:\\cpp\\buch\\";
  10. class TMonster
  11. {
  12. private:
  13.   String Name;
  14.   String Wesen;
  15.   String Bild;
  16. public:
  17.   void Erscheinen(void);
  18.   virtual String Typ (void) {return "Monster";};
  19.   TMonster (String N, String W, String Datei);
  20. };
  21.  
  22. class TGMonster : public TMonster
  23. {
  24. public:
  25.   virtual String Typ (void) {return "GeistesMonster";};
  26.   TGMonster (String N, String W, String Datei);
  27. };
  28.  
  29. class TSMonster : public TMonster
  30. {
  31. public:
  32.   virtual String Typ (void) {return "SeelenMonster";};
  33.   TSMonster (String N, String W, String Datei);
  34. };
  35.  
  36. //---------------------------------------------------------------------------
  37.  
  38. TMonster  *Frank;
  39. TGMonster *Albert;
  40. TSMonster *Sigmund;
  41. TForm1 *Form1;
  42.  
  43. //---------------------------------------------------------------------------
  44. __fastcall TForm1::TForm1(TComponent* Owner)
  45.     : TForm(Owner)
  46. {
  47. }
  48. //---------------------------------------------------------------------------
  49. TMonster::TMonster (String N, String W, String Datei)
  50. {
  51.   Name = N; Wesen = W; Bild = Datei;
  52. }
  53. //---------------------------------------------------------------------------
  54. TGMonster::TGMonster (String N, String W, String Datei)
  55.   : TMonster (N, W, Datei)
  56. {
  57. }
  58. //---------------------------------------------------------------------------
  59. TSMonster::TSMonster (String N, String W, String Datei)
  60.  : TMonster (N, W, Datei)
  61. {
  62. }
  63. //---------------------------------------------------------------------------
  64. void TMonster::Erscheinen (void)
  65. {
  66.   Form1->Label1->Caption = "Name:    " + Name;
  67.   Form1->Label2->Caption = "Wesen:    " + Wesen;
  68.   Form1->Label3->Caption = "Typ:    " + Typ();
  69.   Form1->Image1->Picture->LoadFromFile (Pfad+Bild);
  70. }
  71. //---------------------------------------------------------------------------
  72. void __fastcall TForm1::FormCreate(TObject *Sender)
  73. {
  74.   Frank   = new TMonster  ("Frankie", "ungew÷hnlich", "Frank.bmp");
  75.   Albert  = new TGMonster ("Berti", "nachdenklich", "Albert.bmp");
  76.   Sigmund = new TSMonster ("Sigi", "mitfⁿhlend", "Sigmund.bmp");
  77. }
  78. //---------------------------------------------------------------------------
  79. void __fastcall TForm1::Button1Click(TObject *Sender)
  80. {
  81.   Frank->Erscheinen ();
  82. }
  83. //---------------------------------------------------------------------------
  84. void __fastcall TForm1::Button2Click(TObject *Sender)
  85. {
  86.   Albert->Erscheinen ();
  87. }
  88. //---------------------------------------------------------------------------
  89. void __fastcall TForm1::Button3Click(TObject *Sender)
  90. {
  91.   Sigmund->Erscheinen ();
  92. }
  93. //---------------------------------------------------------------------------
  94.